home *** CD-ROM | disk | FTP | other *** search
/ Wonky Flux Batch 2019 02 / Wonky_Flux_Batch_2019-02.zip / Wonky Flux Batch 2019-02 / 092 - EBU.dsk / GAMES / AIR.ATTACK.bas next >
BASIC Source File  |  2019-02-17  |  4KB  |  85 lines

  1. 10  REM   ******AIR ATTACK*******
  2. 20  PRINT  CHR$(17)
  3. 80  GOSUB 1000: REM   INSTS
  4. 90  GOSUB 2000: REM   SETUP
  5. 100  GOSUB 3000: REM   PLAY
  6. 110  GOSUB 4000: REM   END
  7. 120  END 
  8. 130  REM  SL=SHOTS LEFT. YOU CAN MAKE A LONGER GAME BY GIVING MORE SHOTS ON 200
  9. 1000 :
  10. 1010  REM   ******INSTS******
  11. 1020 :
  12. 1030  TEXT : HOME : NORMAL 
  13. 1040  VTAB 3: HTAB 11: PRINT "*** AIR ATTACK ***"
  14. 1050  VTAB 7
  15. 1060  PRINT "IN THIS GAME YOU ARE A FIGHTER PILOT. YOU SCORE BY HITTING ONE OF THE ENEMY SHIPS WITH ONE OF YOUR BOMBS AND SINKING IT."
  16. 1070  PRINT 
  17. 1080  PRINT "TO DROP A BOMB SIMPLY PRESSANY KEY ON THE KEYBOARD. YOUR SCORE FOR HITTING A SHIP WILL DEPEND ON WHICH PART OF THE SHIP YOU HIT."
  18. 1090  PRINT 
  19. 1100  PRINT "IF YOU HIT THE LOWER DECK, YOU SCORE 10 POINTS. IF YOU HIT THE UPPER DECK, YOU SCORE 20 POINTS. IF YOU HIT THE SMOKE-STACK YOU HAVE DONE VERY WELL, AND ARE REWARDED WITH 30 POINTS."
  20. 1110  VTAB 23
  21. 1120  INPUT "PRESS *RETURN* TO CONTINUE : ";AN$
  22. 1130  HOME : VTAB 3: HTAB 11: PRINT "***AIR ATTACK***": VTAB 7
  23. 1140  PRINT "YOU HAVE AN ARSENAL OF 25 BOMBS. THE SPEED OF EACH WILL VARY, SO MAKE EVERY SHOT COUNT!"
  24. 1150  PRINT : PRINT "GOOD LUCK!!!"
  25. 1160  VTAB 23
  26. 1170  INPUT "PRESS *RETURN* TO CONTINUE : ";AN$
  27. 1180  RETURN 
  28. 2000 :
  29. 2010  REM   *** SETUP
  30. 2020 :
  31. 2030 SL = 25
  32. 2040  REM   LINE 2020 DRAWS THE WATER
  33. 2050  GR 
  34. 2060  COLOR= 2
  35. 2070  HLIN 0,39 AT 39
  36. 2080  HLIN 0,39 AT 38
  37. 2090 AX = 0:SX = 33:SS = 1
  38. 2100  RETURN 
  39. 3000 :
  40. 3010  REM   *** PLAY
  41. 3020 :
  42. 3030  HOME 
  43. 3040  VTAB 22: CALL  -958: PRINT "SHOTS LEFT: "SL" SCORE:"TS
  44. 3050  GOSUB 3090: REM   PLANE
  45. 3060  GOSUB 3130: IF SL = 0  THEN  RETURN 
  46. 3070  GOSUB 3270: REM   SHIP
  47. 3080  GOTO 3050
  48. 3090  COLOR= 0: HLIN AX,AX +6 AT 2: HLIN AX +1,AX +6 AT 1: PLOT AX +6,0
  49. 3100  REM   LINE 3110 CHECKS TO SEE IF THE PLANE IS AT POSITION -1. IF SO, THE LANE IS OFF THE SCREEN. AX REVERRTS TO 33, THE RIGHT HAND SIDE OF THE PICTURE. FROM THERE THE CYCLE BEGINS AGAIN.
  50. 3110 AX = AX -1: IF AX <0  THEN AX = 33
  51. 3120  COLOR= 4: HLIN AX,AX +6 AT 2: HLIN AX +1,AX +6 AT 1: PLOT AX +6,0: RETURN 
  52. 3130  IF FF  THEN 3160
  53. 3140  IF  PEEK( -16384) <128  THEN  RETURN 
  54. 3150 FF = 1: POKE  -16368,0:FX = AX +3:FY = 2
  55. 3160  COLOR= 0: PLOT FX,FY
  56. 3170 FY = FY +1
  57. 3180  IF  SCRN( FX,FY) = 0  THEN  COLOR= 13: PLOT FX,FY: RETURN 
  58. 3190  IF  SCRN( FX,FY) = 2  THEN 3230
  59. 3200 TS = TS +(38 -FY) *10
  60. 3210 SC = 0: COLOR= 0: HLIN SX,SX +6 AT 37: HLIN SX +3,SX +5 AT 36: PLOT SX +4,35
  61. 3220 SX = 33:SS = 1:SC = 0
  62. 3230  COLOR= 2: HLIN FX -1,FX +1 AT 37: PLOT FX -2,36: PLOT FX,36: PLOT FX2,36: PLOT FX -3,35: PLOT FX,35: PLOT FX +3,35
  63. 3240  COLOR= 0: HLIN FX -1,FX +1 AT 37: PLOT FX -2,36: PLOT FX,36: PLOT FX2,36: PLOT FX -3,35: PLOT FX,35: PLOT FX +3,35
  64. 3250 FF = 0:SL = SL -1: POKE  -16368,0
  65. 3260  VTAB 22: CALL  -958: PRINT "SHOTS LEFT: "SL" SCORE:"TS: RETURN 
  66. 3270 SC = SC +1: IF SC <SS  THEN  RETURN 
  67. 3280 SC = 0: COLOR= 0: HLIN SX,SX +6 AT 37: HLIN SX +3,SX +5 AT 36: PLOT SX +4,35
  68. 3290 SX = SX +1: IF SX >33  THEN SX = 0:SS =  INT( RND(1) *3) +1:SC = SS
  69. 3300  COLOR= 1: HLIN SX,SX +6 AT 37: HLIN SX +3,SX +5 AT 36: PLOT SX +4,35: RETURN 
  70. 3500 :
  71. 4000  GOSUB 4030: FOR T = 1 TO 5500: NEXT 
  72. 4010  TEXT : HOME : VTAB 10: PRINT "Do you want to play again? Y/N ";
  73. 4012  GET YN$
  74. 4014  IF YN$ < >"Y"  AND YN$ < >"y"  AND YN$ < >"N"  AND YN$ < >"n"  THEN 4010
  75. 4016  IF YN$ = "Y"  OR YN$ = "y"  THEN  RUN 
  76. 4018  PRINT  CHR$(4);"-/ram/mc": NEW 
  77. 4020 :
  78. 4030  HOME : PRINT "THE GAME IS OVER": PRINT "YOUR SCORE OF "TS" IS ";
  79. 4040  IF TS <25  THEN  PRINT "ROTTEN!!!": RETURN 
  80. 4050  IF TS <50  THEN  PRINT "BAD!!!": RETURN 
  81. 4060  IF TS <75  THEN  PRINT "POOR!!!": RETURN 
  82. 4070  IF TS <100  THEN  PRINT "FAIR...": RETURN 
  83. 4080  IF TS <150  THEN  PRINT "GOOD...": RETURN 
  84. 4090  IF TS <250  THEN  PRINT "GREAT!!!": RETURN 
  85. 4100  IF TS <450  THEN  PRINT "FANTASTIC!!!": RETURN